/*
* This file is part of RoboDS (http://code.google.com/p/robods/)
* Copyright (C) 2007 Blakharaz
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
* 
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
* GNU General Public License for more details.
* 
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
*/

#include "Map.h"

#include "EmptyTile.h"
#include "PitTile.h"
#include "WallTile.h"

namespace robo
{

    Map::Map(unsigned int length,
             unsigned int height)
     : mHeight(height), mLength(length)
    {
    }

    Map::~Map()
    {
    }

    void Map::load(const std::string& maptiles)
    {
        unsigned int charNum = 0;

        for (unsigned short y = 0; y < mHeight; ++y)
        {
            for (unsigned short x = 0; x < mLength; ++x)
            {
                AbstractTile* tile = createTile(maptiles[charNum], x, y);
			    mMapTiles[std::make_pair(x, y)] = tile;
                charNum++;
            }
        }

        update();
    }

} // namespace robo
